package jwt

import (
	"github.com/spf13/viper"
)

var JwtCig *JwtConfig // Jwt配置

type JwtConfig struct {
	IgnorePaths []string
	Secret      string
}

// AddIgnorePath 增加Jwt不校验路径
func (config *JwtConfig) AddIgnorePath(ignorePath string) *JwtConfig {
	config.IgnorePaths = append(config.IgnorePaths, ignorePath)
	return config
}

// JwtIgnorePath Jwt不校验路径集
func (config *JwtConfig) JwtIgnorePath() {
	config.AddIgnorePath("/api/v1/user").
		AddIgnorePath("/ping")

}

// InitJwtConfig 初始化Jwt配置
func InitJwtConfig() {
	JwtCig = &JwtConfig{
		IgnorePaths: make([]string, 0),
		Secret:      viper.GetString("jwt.secret"),
	}
	JwtCig.JwtIgnorePath()
}
